package ms.core.gateway.response;

import java.util.ArrayList;
import java.util.List;

import com.alibaba.fastjson.annotation.JSONField;

import lombok.Data;
import ms.core.gateway.bean.DicConstBean;
import ms.core.tool.JsonTool;

@Data
public class DicConstVO extends DicConstBean {
	public List<ConstItem> getItems(boolean loadHide) {
		String consts = getConsts();
		List<ConstItem> list = JsonTool.jsonToListBean(consts, ConstItem.class);
		if (list==null) list = new ArrayList<>();

		// 过滤不显示常量
		if (!loadHide) {
			int i=0;
			while(i<list.size()) {
				if (list.get(i).getHide()==1) list.remove(i);
				else i++;
			}
		}

		return list;
	}

	@Data
	public static class ConstItem {
		private Object id;			// 常量id
		private String value;		// 常量值
		@JSONField(serialize=false)
		private int hide;			// 是否隐藏(0-显示;1-隐藏),前端接口加载常量列表时,只可加载显示标识常量列表
	}
}